//
// MethodsWithDifferentReturnTypes.h
// Copyright 2010 Mark Buer
//
// This file is part of zc-aspect.
//
// zc-aspect is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// zc-aspect is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with zc-aspect.  If not, see <http://www.gnu.org/licenses/>.
//

#import <Foundation/Foundation.h>


#define CHAR_RETURN_VALUE 'a'
#define INT_RETURN_VALUE 12345678
#define SHORT_RETURN_VALUE 12345
#define LONG_RETURN_VALUE 87654321
#define LONG_LONG_RETURN_VALUE 12345678912345
#define U_CHAR_RETURN_VALUE 0xff
#define U_INT_RETURN_VALUE 0xffeeddcc
#define U_SHORT_RETURN_VALUE 0x6677
#define U_LONG_RETURN_VALUE 0x11223344
#define U_LONG_LONG_RETURN_VALUE 0xffeeddccbbaa9988
#define FLOAT_RETURN_VALUE 1234.56f
#define DOUBLE_RETURN_VALUE 1234.56
#define LONG_DOUBLE_RETURN_VALUE 1234.56
#define C99BOOL_RETURN_VALUE true
#define VOIDPOINTER_RETURN_VALUE (void *)0x45671234


@interface MethodsWithDifferentReturnTypes : NSObject {

}

- (char)returnsChar;
- (int)returnsInt;
- (short)returnsShort;
- (long)returnsLong;
- (long long)returnsLongLong;
- (unsigned char)returnsUnsignedChar;
- (unsigned int)returnsUnsignedInt;
- (unsigned short)returnsUnsignedShort;
- (unsigned long)returnsUnsignedLong;
- (unsigned long long)returnsUnsignedLongLong;
- (float)returnsFloat;
- (double)returnsDouble;
- (long double)returnsLongDouble;
- (_Bool)returnsC99Bool;
- (void *)returnsVoidPointer;

@end
